1. Field of the Invention
The present invention relates to detection of data in a communications system, and, more particularly, to processing of servo data information read from a channel.
2. Description of the Related Art
A read channel integrated circuit (IC) is a component of a modern disk drive, such as a hard disk drive found in many PCs. A read channel component converts and encodes data to enable the (e.g., magnetic) recording head(s) to write data to the disk and then read back the data accurately. The disks in a hard disk drive typically include many tracks containing encoded data, and each track comprises one or more of user (or “read”) data sectors as well as “servo” data sectors embedded between the read sectors. The information of the servo sectors aids in positioning the magnetic recording head over a track on the disk so that the information stored in the read sectors may be retrieved accurately.
FIG. 1 shows a conventional magnetic recording system 100 of the prior art. Servo information is encoded by block encoder 101, and block encoder 101 may represent one or more different encoders associated with different fields of the servo information, such as Gray code and servo address mark (SAM) data. The encoded servo information is written to the disk (or other recording medium) as servo sector information.
FIG. 2 shows the format of servo sector information 200. Servo sector information 200 comprises preamble 201 (e.g., a 2T pattern) that allows the system to recover the timing and gain of the written servo data. Preamble 201 may be followed by encoded SAM data 202, which is generally an identical identification address (fixed number of bits) for all servo sectors. SAM data 202 may then be followed by Gray data 203 (i.e., encoded Gray code). Gray data 203 represents track number/cylinder information and may be employed as coarse positioning information for the magnetic head. One or more burst demodulation fields 204 follow Gray data 203. Burst demodulation fields 204 are employed as fine positioning information for the head over the track. Repeatable-run-out (RRO) data field 205 follows burst demodulation fields 204. RRO data in RRO data field 205 provides head-positioning information to correct for RRO, which occurs when the head does not track an ideal path over the disk. RRO information is finer than that provided by the Gray data and coarser than that provided by the burst demodulation fields.
Returning to FIG. 1, the encoded servo information is read back by a magnetic recording head. Together, the process of writing to, storing on, and reading from the disk by the recording head may be modeled as magnetic recording channel 102 with added noise and DC shifts. Data read from the disk is referred to as readback data. The readback data is equalized to a desired target partial response by equalizer 103. Equalizer 103 comprises continuous time filter (CTF) 120 followed by discrete time, finite impulse response (FIR) filter 121. Sampling of the signal from CTF 120 might be accomplished via switch 122. Sampling might be synchronous using the timing information from digital phase locked loop (DPLL) 123 when servo SAM, Gray, and demodulation burst data are read, but might also be asynchronous if DPLL 123 is not used. Sampling of the signal from CTF 120 might be asynchronous when RRO data is read. The output of equalizer 103 is digitized and quantized by analog-to-digital converter (ADC) 104, whose output is shown as Y values.
For either synchronous and asynchronous sampling, the Y values might be applied to data detector 105, which is typically a partial-response maximum-likelihood (PRML) detector employing, for example, a Viterbi algorithm. Detector 105 may also be implemented with a slicer. Constraints imposed by the servo-encoding algorithm of block encoder 101 might be employed in the design of data detector 105 for optimal decoding of the encoded servo information. The output of data detector 105 is applied to SAM detector 107 to detect the SAM data. The output of data detector 105 and the output of SAM detector 107 are applied to Gray code decoder 108 to generate decoded Gray data. The ‘Y’ values are also applied to burst demodulator 111 to generate fine positioning information for the head over the track.
For asynchronous sampling, such as when DPLL 123 is not used or when reading RRO data, data phase generator 109 and data phase selector 110 might be employed. Data phase generator 109 generates one or more additional sample sequences from the Y values, each additional sample sequence having a different phase relative to the phase of asynchronous samples from ADC 104. The one or more additional sample sequences might be generated either by asynchronous over-sampling or by interpolation of the asynchronous samples from ADC 104. The one or more additional sample sequences and the asynchronous samples from ADC 104 are provided to data phase selector 110. Data phase selector 110 selects of the input sequences for use by data detector 105 based on a determination of which sequence phase is closest to those having ideal timing.
In addition to noise, DC (baseline level) shifts might impair the signal of recording channel 102. Performance of magnetic recording system 100, as measured by SAM detection error rate and Gray code detection error rate, might be degraded considerably when large amplitude DC shifts corrupt the encoded servo information signal. These DC shifts might occur when the read head becomes unstable. FIG. 3A shows a graph of waveforms with DC baseline shift (shown as dashed lines) and without DC baseline shift (shown as solid lines) before sampling, and FIG. 3B shows a graph of waveforms with and without DC baseline shift after equalization and sampling (circles are sample points). Shown in FIGS. 3A and 3B are the input servo signal as well as one phase of the servo signal at the output of ADC 104 before data detection, respectively.
Data detector 105 might detect positive and negative peaks in the servo signal, but DC shifts in the servo signal cause severe signal discontinuities. DC shifts might occur i) randomly within the servo signal, ii) with random duration, and iii) multiple times. Consequently, DC shifts of magnetic recording system 100 are different from a fixed DC offset applied to the entire servo signal or a fixed offset applied to the signal corresponding to individual servo-encoded words. Depending on where the DC shifts occur in the signal, the DC shift might lead to a severe reduction in amplitude of the peaks in the signal, preventing reliable data detection regardless of the type of data detection employed by system 100. For example, in FIGS. 3A and 3B, the amplitude of the negative peak around time 1025 is severely degraded. Less reliable data detection results in an increase in the SAM detection and Gray bit error rates, which inhibits proper operation of the servo system and, in particular, the throughput of the servo system.